package com.fanqi.ipcapp.okhttp;

import androidx.appcompat.app.AppCompatActivity;

import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.os.Environment;

import com.fanqi.ipcapp.R;

import java.util.ArrayList;
import java.util.PriorityQueue;

public class OkHttpActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_ok_http);
        //修改占用空间少的存储方式可以快速有效降低图片占用内存
        //RGB-565 代表着 5+6+5=16位-》2个字节。
        //RGB-8888 代表着 8+8+8+8=32位-》4个字节。
        BitmapFactory.Options options = new BitmapFactory.Options();
        options.inPreferredConfig = Bitmap.Config.RGB_565;
        //另外 Options 中还有一个 inSampleSize 参数，可以实现 Bitmap 采样压缩，这个参数的含义是宽高维度上每隔 inSampleSize 个像素进行一次采集

        int resId=getResources().getIdentifier("tvDetail","layout",getPackageName());

    }

    /**
     * 在 Android 4.4 版本之前，只能重用相同大小的 Bitmap 内存区域；
     * 4.4 之后你可以重用任何 Bitmap 的内存区域，只要这块内存比将要分配内存的 bitmap 大就可以。
     *
     * @return
     */
    private boolean canUseInBitmap(Bitmap canBitmap, BitmapFactory.Options targetOptions) {
        int width = targetOptions.outWidth / Math.max(targetOptions.inSampleSize, 1);
        int height = targetOptions.outHeight / Math.max(targetOptions.inSampleSize, 1);
        int byteCount = width * height * getBytePerPixel(canBitmap.getConfig());
        //新的bitmap内存，需要<= 可复用的bitmap占用内存
        return byteCount <= canBitmap.getAllocationByteCount();
    }

    private int getBytePerPixel(Bitmap.Config config) {
        int bytePerPixel;
        switch (config) {
            case ALPHA_8:
                bytePerPixel = 1;
                break;
            case RGB_565:
                bytePerPixel = 2;
                break;
            case ARGB_8888:
                bytePerPixel = 4;
                break;
            default:
                bytePerPixel = 4;
                break;
        }
        return bytePerPixel;
    }


    //BitmapRegionDecoder


}
